home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MACD 5
/
MACD 5.bin
/
workbench
/
tools
/
czesc_2
/
guispell-1.0
/
usenet_posts
< prev
Wrap
Text File
|
1992-03-25
|
12KB
|
265 lines
Newsgroups: comp.sys.amiga.applications
Path: sunb10.cs.uiuc.edu!hew2.cs.uiuc.edu!rittle
From: rittle@hew2.cs.uiuc.edu (Loren Rittle)
Subject: Does a spelling checker have to be included in an Amiga WP?
Message-ID: <1992Mar22.095620.1794@sunb10.cs.uiuc.edu>
Sender: news@sunb10.cs.uiuc.edu
Reply-To: l-rittle@uiuc.edu (Loren J. Rittle)
Organization: University of Illinois at Urbana-Champaign
References: <1992Mar13.034854.26865@marlin.jcu.edu.au> <j4!j3ykharp@netcom.com> <1992Mar20.091717.53877@cc.usu.edu> <1992Mar20.092541.53878@cc.usu.edu> <29575@cbmvax.commodore.com>
Date: Sun, 22 Mar 1992 09:56:20 GMT
Lines: 46
farren@cbmvax.commodore.com (Mike Farren) writes:
>slbfn@cc.usu.edu writes:
>> I am writting a "Graphic" word processor for use on the ami. It's being
>> written in total asembly. I've been working on this for quite some time
>> now ( around two years ) and should have it done in another year or so...
>> Anyways, I wan't to know of some of the features you guys would like to
>> see on this. Rescently, I've been sitting down looking at Word for
>> Windows and am using this as my "base".
>>
>> Some features allready developed include (but not limited to...)
>Sounds like a good thing to do, and a lot of work. Good luck!
>The first feature that pops out as desirable to me is a spell checker.
>Your posting quite effectively demonstrates this need :-) (and I mean
>that smiley - no offense intended.)
I would suggest that you don't include a spelling checker.
``What is this guy smoking?,'' you ask!
No, I'm not on drugs. How about using the Amiga OS the way it was
meant to be used? I don't want ten spelling checkers on my system!
I want *one* spelling checker that all applications use. One thing
I hate about *the Mac way* is that each and every application has
it's own spelling checker builtin! Even the blasted structured
drawing packages have their own spelling checker subsystem! What
a waste to have a different spell checker package (with dictionary)
for each application.
Instead, I suggest that you include the ability to call my (or any
other) spelling checker via ARexx. I will send anyone interested
in attempting this idea all the needed code.
If you feel that you must include a spelling checker, may I at least
ask that you in addition provide a way to call an external spelling checker
as well (this could be as simple as providing a generic enough macro key
bind / macro / ARexx facility ala CyngusED, TurboText, TxEd, mg 3.4beta,
Emacs, ProVector and the list grows). Don't forget to make the install
of the builtin spelling checker optional... (it would defeat one purpose
of my arguement, if I was forced to load onto HD and at run time your
spelling checker, even if I were using my external one... :-).
Regards,
Loren
Newsgroups: comp.sys.amiga.applications
Path: sunb10.cs.uiuc.edu!hew2.cs.uiuc.edu!rittle
From: rittle@hew2.cs.uiuc.edu (Loren Rittle)
Subject: Re: Does a spelling checker have to be included in an Amiga WP?
Message-ID: <1992Mar23.103237.9253@sunb10.cs.uiuc.edu>
Sender: news@sunb10.cs.uiuc.edu
Organization: University of Illinois at Urbana-Champaign
Date: Mon, 23 Mar 1992 10:32:37 GMT
Lines: 155
soft-logik@cup.portal.com (Kevin W Davidson) writes:
>>No, I'm not on drugs. How about using the Amiga OS the way it was
>>meant to be used? I don't want ten spelling checkers on my system!
>I only have 6 spelling dictionaries on my system.
I only have one. You have 5 too many in my book. :-)
>The Amiga has done so much with the IFF standard for graphics. I think
>that there ought to be an IFF Spelling Dictionary format and a spell.
>library. That way developers could add spell checkers cheaply and we'd
>all save hard disk.
Why does there need to be a IFF standard and/or a spell.library?
The ARexx interface works fine. Although ARexx is known to have
some throughput problem according to others, I get 10,000 spell
checks (including the dictionary search for replacement words /
and all the overhead of ARexx based data transfers) a second on
my machine with an ARexx script talking to my ISpell (running in
ARexx Server Mode) program. Currently developers *can* include
spell checkers cheaply and we *all* can save hard disk space.
Also of note, currently an application with a good ARexx interface
and a user with ISpell and some ARexx knowledge can do the same
thing! As I said before, I have added spell check services to
CedPro (even spell check as you type!) and ProVector. Others have
done support for Txed, mg, TurboText, and ProWrite (because ISpell
is faster than the builtin spelling checker, so I heard from the person
who did the macros :-). SoftLogik could add direct support for the ISpell
defacto standard `Spell Checker ARexx Interface' in about one programmer
day.
I just sent the following to a few people, and as it is of general
interest, I will also post it here. Here is the
`Spell Checker ARexx Interface':
Hello Tirso,
The only standard that I know of is the defacto standard that
I implemented in ISpell (for it's ARexx Server Mode). I say
defacto standard as my ARexx Server Mode version of ISpell (a
UNIX port done by people before me) is the only spelling checker
with an ARexx port that I know of. I would be happy to hear of
other spelling checkers available for the Amiga with an ARexx port.
I would be more than happy to talk with authors of other spelling
checkers about this issue. I want all spelling checkers to at
least use the same base ARexx commands! Base support would be the
following 4 ARexx commands:
add, check, quickcheck, lookup
quickadd and filecheck (in it's current form) haven't proved all that
useful over the past two years while in the ISpell ARexx Server.
version and exit aren't strictly needed, but should be easy to implement so
why not?
> R(0);T(00.200) > "options results; address 'IRexxSpell' version; say result
> ISpell Version 3.1ljr with ARexx Server Mode, Thu Dec 27 04:16:35 1990
> add quickadd check quickcheck lookup filecheck version exit
[if you don't use ARexx / WShell forgive the above. It is basically an
inline ARexx program that I quickly typed at a WShell prompt. :-]
Note the ARexx port name is IRexxSpell in this case - other spell checkers
should use a different port name (and applications should allow a user to
set the name of the ARexx port to access, IMHO).
OK, from the above we see 8 commands that operate as follows:
add - add a new word to the current personal (if it exists,
main otherwise) dictionary. AND flush dictionary changes
to disk.
Usage: add <word>
Returns: "ok" [not useful currently]
[some sort of other error text could be returned
"disk error", "out of memory", etc]
quickadd - add a new word to dictionary as above, except dictionary
may not be flushed to disk. All changes (even if made via
this quickadd command) will flushed when an add
is done. This command is useful if many words are added to
the dictionary at once. Some spelling checker may just alias
this command to add.
Usage: quickadd <word>
Returns: "ok" [not useful currently]
check - check if a word is found in the dictionary.
Usage: check <word>
Returns: on exact match: "*"
on exact macth of root word plus listed ending:
"+ <rootword>"
on no match, but close words found:
"& <list of words that are close>"
on no match and no close words found: "#"
[this may seem strange, but I just mapped ISpell stdio output
to ARexx. It is quite easy to parse in ARexx scripts, thus
it seems to work fine.] [NOTE: 'options results' must be enabled]
quickcheck- quickly check if a word is found in the dictionary.
Usage: quickcheck <word>
Returns: on exact match or exact match of root+ending: "ok"
on no match: "bad" ('options results' must be enabled)
[I think that rc should be set to a boolean value as well, so
that 'options results' need not be enabled but... I don't
currently set the rc (I alway return 0) so it ain't in the
spec... :-]
[I don't want to insult your ARexx knowledge, but I'll
assume that you don't know and explain: by default callers of
ARexx functions only get number value returns via a variable
called RC, to accept string returns, ARexx must be told to
return them to the caller via the 'options' command. In
this case: 'options results'. If string returns are enabled
then callers can check the variable RESULT for a string that
the function returned. ARexx functions can always return
both a number value (found in RC after the function call)
AND a string value (found in RESULT), but a caller will
only see the the string result if it was asked for.]
lookup - look in dictionary for words that match a given full
regular expression (UNIX style, but AmigaOS 2.04 would
be better. Let's say that either could be used... :-)
Usage: lookup <reg. exp.>
Returns: "& <list of all words that matched the pattern>"
filecheck - KLUDGE that needs to be reworked. Currently used to spell
check an entire file on disk and copy all unknown words (in
the order found in input file) to temp. T: output file.
Usage: filecheck <full name with complete path to disk file>
Returns: on error: "Error: <exact error message>"
[usually: can't open file for input or can't open
file for output, etc.]
on completion: "<temp. file>"
[application that used spell server now `owns' the
temp. file whose name is returned and should
delete it when done with it!]
version - you can see the output above. full app name, compile date,
and a list of ARexx commands accepted by the server. This ouput is
spell checker dependent, but I see nothing wrong with following this
style.
exit - spell checker software should shut down server and quit.
Results: "bye" [or whatever, or nothing]
I, Loren J. Rittle, hereby give up any sort of exclusive rights (that I
may of had) to the above interface which I invented (in 1989 and
improved until 1990) and implemented in a noncommercial spelling
checker, ISpell. Anyone can use the above Spell Checker ARexx Interface
without paying any license fees to the author, Loren J. Rittle. It
would be nice if credit were given if used in a product.
Regards,
Loren J. Rittle
l-rittle@uiuc.edu
Newsgroups: comp.sys.amiga.applications
Path: sunb10.cs.uiuc.edu!hew2.cs.uiuc.edu!rittle
From: rittle@hew2.cs.uiuc.edu (Loren Rittle)
Subject: Re: Does a spelling checker have to be included in an Amiga WP?
Message-ID: <1992Mar23.233211.14608@sunb10.cs.uiuc.edu>
Sender: news@sunb10.cs.uiuc.edu
Organization: University of Illinois at Urbana-Champaign
References: <1992Mar23.103237.9253@sunb10.cs.uiuc.edu> <pat_meloy.06i1@outbound.wimsey.bc.ca>
Date: Mon, 23 Mar 1992 23:32:11 GMT
Lines: 27
pat_meloy@outbound.wimsey.bc.ca (Pat Meloy) writes:
> The one problem with ISpell is that it takes up ~800k of ram to run in
>server mode. I used it to add a spell check/replace in the BBS I used to
>run. It worked great and it ran lickety-split! Unfortunately, most Amiga
>owners are limited to a total of 512k or 1meg ram and thus it has to be run
>from disk. This means no arexx port and only marginal benefits.
Pat,
There is no reason why another spelling checker couldn't use the exact
same ARexx interface as ISpell, but yet use a disk based dictionary. This
is what I'm advocating (maybe I should move over to c.s.a.advocacy, NOT).
You will note that I released the ARexx interface that I implemented in
ispell for free and commercial use (at either end - people can implement
backend servers that use the same interface as ISpell uses and people
can implement clients and ARexx macros that use the same interface that
ISpell based macros use).
I could write a dumb disk based dictionary spelling checker IN ARexx that
uses the same ARexx interface as ISpell in less than one half week's worth
of time. If that is what it takes to prove to you that this is a good idea,
then I'll do it. ISpell is ported from UNIX, the algorithms contained
within assume memory to burn and the performance shows. The dumb disk
based spelling checker will be a lot slower, but will prove my point.
Regards,
Loren